home *** CD-ROM | disk | FTP | other *** search
- /* Programm: SHOW_DT.dopus5
- ** $VER: SHOW_DT.dopus5 0.6 Beta (30-Jan-96)
- **
- **
- ** Needed: Directory Opus V5.xx (© by Jonathan Potter & GPSoftware)
- ** amipeg05
- **
- ** optional: PeggyPlus MPEG-Card (© Ingenierbuero Helfrich)
- **
- ** Copyright © 1995 Eckhard Ludwig (Eckhard@top.east.de)
- ** SHOW_DT.dopus5 is freeware. It may be distributed freely.
- **
- ** Show grafik, video & animation from DOpus5. Only for DOpus5-filetypes,
- **
- **
- ** Call as:
- ** --------------------------------------------------------------------------
- ** (Doubleklick) ARexx DOpus5:ARexx/SHOW_DT.dopus5 {f} {Qp} {Ql}
- ** --------------------------------------------------------------------------
- ** Set Attribut: "Run asynchron" (Asynchroner Start)
- **
- */
-
- /*--------S E T T I N G S : -------------------------------------------*/
- /* If the file ENV:SHOW_opus5.prefs exists, that one will override the */
- /* settings here ... */
-
- /*- Path to viewer command ----------------------------------------*/
- MPEGP = "C:mpeg_play.040" /* amipeg05 MPEG Softwareplayer */
- MPEG_OPT = "-dither cybergfx -modeid 40120051"
-
- cdxlP = "C:cdgsxl"
- cdxl_opt = "dosxl blit multipal xlspeed 150 nopointer lmbabort"
-
- CybTV = "C:CyberTVPlayer"
-
- QTP = "C:XANIM"
- QT_OPT = "+Ak"
-
- AVI1 = "C:TAPAVI"
- AVI1_OPT = "SOUND"
-
- AVI2 = "C:XANIM"
- AVI2_OPT = "+Ak"
-
- FLCP = "C:FLICK"
- FLC_OPT = "ROM DISK"
-
- FLIP = "C:FLICK"
- FLI_OPT = "ROM DISK"
-
- parse arg '"' Titel '"' portname handle
-
- if portname='' then
- portname='DOPUS.1'
-
- options results
- options failat 21
- lf='0a'x
-
- Index = 'T:PlayDOpus5Index.temp' /*Name entspricht PlayHifi.dopus5 !*/
-
- if ~show('l','rexxsupport.library') then
- call addlib('rexxsupport.library',0,-30,0)
-
- /* init locale */
- if ~show(l,'locale.library') then
- call addlib('locale.library',0,-30)
- if show(l,'locale.library') then
- catalog=opencatalog('SHOW_dopus5.catalog','english',0)
-
- if open(1,'env:SHOW_opus5.prefs','R') then do
- do i=1 to 3
- prefs.i = readln(1)
- end
- if prefs.2 ~="" then MPEGP=prefs.2
- if prefs.3 ~="" then MPEG_OPT=prefs.3
- drop prefs.
- call close(1)
- end
-
- address value portname
- dopus getfiletype '"'Titel'"' id
- DT=result
-
- select
- when DT="MPEG1" | DT="MPG" then do
- if showlist("A","PEGGYPLUS")=1 then do
- if ~show('P','Peggy') & ~show('P','rexx_ScalaMM') then do
- call pragma('STACK',8192)
- address command
- 'RUN >NIL: <NIL: PEGGYPLUS:MPEGPlayer'
- 'waitforport Peggy'
- address value portname
- dopus front
- end
- end
- if show('P','Peggy') then do
- if exists(Index) then do
- if ~delete(Index) then do
- dopus front
- dopus request '"'getcatstr(0,'Error:'lf'Hifi-Player or Peggy-Plus in use !')'"' getcatstr(1,'Quit')
- exit
- end
- end
- address 'Peggy'
- OPEN '"'Titel'"'
- 'OUTPUT FULLSCREEN'
- 'PLAY async'
- exit
- end
- else do
- if DT="MPEG1" then do
- dopus front
- dopus request '"'getcatstr(3,'Error:'lf'MPEG1 (video and audio) data found !'lf'MPEG1 needed PeggyPlus MPEG-Card.')'"' getcatstr(1,'Quit')
- exit
- end
- end
- Player=MPEGP
- end
- when DT="CDXL" then Player=cdxlP
- when DT="YUVS" then Player=CybTV
- when DT="msvc" then Player=AVI1
- when DT="ulti" | DT="cvid" | DT="rle8" then Player=AVI2
- when DT="QT" then Player=QTP
- when DT="indeo" then do
- dopus front
- dopus request '"'getcatstr(4,'Error:'lf'AVI Indeo data found.'lf'Video-Format not supported !')'"' getcatstr(1,'Quit')
- exit
- end
- when DT="FLC" then Player=FLCP
- when DT="FLI" then Player=FLIP
- otherwise do
- dopus front
- dopus request '"'getcatstr(5,'Error:'lf'Filetype not supported !')'"' getcatstr(1,'Quit')
- exit
- end
-
- end
-
- if ~exists(Player) then do
- dopus front
- dopus request '"'getcatstr(2,'Error:'lf'Player not found !'lf'path to command: '"'%s'"'',Player)'"' getcatstr(1,'Quit')
- exit
- end
-
- call pragma('STACK',25000)
- address command
- if DT="MPG" then MPEGP" " '"'Titel'"' " "MPEG_OPT
- if DT="CDXL" then cdxlP" " '"'Titel'"' " "cdxl_opt
- if DT="YUVS" then CybTV" "||Titel
- if DT="msvc" then AVI1" " '"'Titel'"' " "AVI1_OPT
- if DT="ulti" | DT="cvid" | DT="rle8" then AVI2" "AVI2_OPT" "||'"'Titel'"'
- if DT="QT" then QTP" "QT_OPT" "||'"'Titel'"'
- if DT="FLC" then FLCP" "FLC_OPT" "'"'Titel'"'
- if DT="FLI" then FLIP" "FLI_OPT" "'"'Titel'"'
-
-
- exit
-
- /*--------------------------------------------------------------------------------*/
- getcatstr:
- parse arg msgno,msgstring,insert.1,insert.2
- if catalog~=0 then msgstring=getcatalogstr(catalog,msgno,msgstring)
- j=0
- do while pos('%s',msgstring)>0
- parse var msgstring fore '%s' aft
- j=j+1
- msgstring=fore||insert.j||aft
- end
- return msgstring
-